package lu.med.praxiswahl.wahlumed.client.menustructure;

import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.io.BufferedWriter;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;

import javax.swing.JFileChooser;
import javax.swing.JOptionPane;

import lu.med.praxiswahl.wahlumed.client.utilities.UniCode;
import lu.med.praxiswahl.wahlumed.client.wclient.Main;


/**
 * 
 * @author Lars Holger Roth
 */
public class MenuListenerOptionsGeneralActionListener implements ActionListener
{
    private Main dataManager;

    public MenuListenerOptionsGeneralActionListener(Main dataManager)
    {
	this.dataManager = dataManager;
    }

    @Override
    public void actionPerformed(ActionEvent e)
    {
	// L�sst den Benutzer einen Bildschirmschoner nach Wahl ausw�hlen
	File sfile = new File("screen.ini");
	JFileChooser fc = new JFileChooser();

	int returnVal = fc.showOpenDialog(null);
	File file;

	if (returnVal == JFileChooser.APPROVE_OPTION)
	{
	    file = fc.getSelectedFile();
	}
	else
	{
	    return;
	}
	// Speichert die Wahl in der Datei screen.ini

	try
	{
	    FileWriter fw = new FileWriter(sfile);
	    BufferedWriter bw = new BufferedWriter(fw);
	    bw.write("SCREENSAVER#" + file.getAbsolutePath());
	    bw.newLine();
	    bw.close();
	}
	catch (IOException io)
	{
	}

	// Teilt dem Benutzer mit, dass ein Neustart des Programms
	// n�tig ist, um die �nderung wirksam zu machen
	JOptionPane.showMessageDialog(dataManager, "Sie m" + UniCode.getue()
		+ "ssen das Programm neu starten, um die " + UniCode.getAE()
		+ "nderung wirksam zu machen");

    }
}
